package com.smiletrain.activities;

import com.smiletrain.R;
import com.smiletrain.activities.base.AbstractActivity;
import com.smiletrain.util.Constantes;

import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.Spinner;
import android.widget.Toast;

public class Form2Activity extends AbstractActivity {
	/**
	 * @see android.app.Activity#onCreate(Bundle)
	 */
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.form_2_view);
		super.setFootLayout();
		
		Spinner sRelacion = (Spinner) findViewById(R.id.sRelacion);
        
		ArrayAdapter<CharSequence> adRelacion = ArrayAdapter.createFromResource(this,
				R.array.v11_cbRelacion, android.R.layout.simple_spinner_item);
        
        adRelacion.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        
        sRelacion.setAdapter(adRelacion);
        
        Spinner sSeentero = (Spinner) findViewById(R.id.sSeEntero);
        
		ArrayAdapter<CharSequence> adSeentero = ArrayAdapter.createFromResource(this,
				R.array.v11_cbSeentero, android.R.layout.simple_spinner_item);
        
        adSeentero.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        
        sSeentero.setAdapter(adSeentero);
		
		ImageView siguiente = (ImageView) findViewById(R.id.bSiguiente);
        
        siguiente.setOnClickListener(new OnClickListener() {
        	
			@Override
			public void onClick(View v) {
				if(validarFormulario() || !Constantes.validar){
					Intent intent = new Intent(Form2Activity.this, Form3Activity.class);
					startActivity(intent);
				}
			}
			
		});
        
        llenarFormulario();
        
	}
	
	private void llenarFormulario() {
		try {
			if(!caso.getTutorapellidos().equals(""))
				((EditText) findViewById(R.id.txtApellidos)).setText(caso.getTutorapellidos());
			
			if(!caso.getTutornombre().equals(""))
				((EditText) findViewById(R.id.txtNombre)).setText(caso.getTutornombre());
			
			if(!caso.getRelacion().equals("")){
				Spinner sRelacion = (Spinner) findViewById(R.id.sRelacion);
				String relacionx = caso.getRelacion();
		        for(int i = 0 ; i < sRelacion.getCount() ; i++){
		        	if(((String) sRelacion.getItemAtPosition(i)).equals(relacionx))
		        		sRelacion.setSelection(i);
		        }
			}
			
			if(!caso.getSeentero().equals("")){
				Spinner sSeentero = (Spinner) findViewById(R.id.sSeEntero);
				String seenterox = caso.getSeentero();
		        for(int i = 0 ; i < sSeentero.getCount() ; i++){
		        	if(((String) sSeentero.getItemAtPosition(i)).equals(seenterox))
		        		sSeentero.setSelection(i);
		        }
			}
			
		} catch(Exception e) {
			Toast.makeText(this, "Error: " + e.getMessage(), Toast.LENGTH_LONG).show();
		}
	}
	
	protected boolean validarFormulario() {
		boolean valido = true;
		String msg = null;
		
		String apellidos = ((EditText) findViewById(R.id.txtApellidos)).getText().toString().trim();
		if(valido){
			if(apellidos.length() == 0) {
				valido = false;
				msg = "Debe ingresar los Apellidos del Tutor";
			} else if(apellidos.length() > 200) {
				valido = false;
				msg = "Los Apellidos del tutor son muy largos";
			}
		}
		
		String nombre = ((EditText) findViewById(R.id.txtNombre)).getText().toString().trim();
		if(valido){
			if(nombre.length() == 0) {
				valido = false;
				msg = "Debe ingresar el Nombre del Tutor";
			} else if(nombre.length() > 200) {
				valido = false;
				msg = "El Nombre del Tutor es muy largo";
			}
		}
		
		String relacion;
		try{
			relacion = ((Spinner) findViewById(R.id.sRelacion)).getSelectedItem().toString().trim();
		}catch(Exception e){
			relacion = "";
		}
		
		String seentero;
		try{
			seentero = ((Spinner) findViewById(R.id.sSeEntero)).getSelectedItem().toString().trim();
		}catch(Exception e){
			seentero = "";
		}
		
		if(!valido){
			Toast.makeText(Form2Activity.this, msg, Toast.LENGTH_LONG).show();
		} else {
			caso.setTutorapellidos(apellidos);
			caso.setTutornombre(nombre);
			caso.setRelacion(relacion);
			caso.setSeentero(seentero);
		}
		
		return valido;
	}

	@Override
	public void updateCaso() {
		try {
		caso.setTutorapellidos(((EditText) findViewById(R.id.txtApellidos)).getText().toString().trim());
		caso.setTutornombre(((EditText) findViewById(R.id.txtNombre)).getText().toString().trim());
		caso.setRelacion(((Spinner) findViewById(R.id.sRelacion)).getSelectedItem().toString().trim());
		caso.setSeentero(((Spinner) findViewById(R.id.sSeEntero)).getSelectedItem().toString().trim());
		} catch(Exception e) {
			
		}
	}
	
}
